#ifndef RTW_HEADER_openManipulatorTrajectoryPlanning_types_h_
#define RTW_HEADER_openManipulatorTrajectoryPlanning_types_h_
#include "rtwtypes.h"
#ifndef DEFINED_TYPEDEF_FOR_ikblock_info_bus_
#define DEFINED_TYPEDEF_FOR_ikblock_info_bus_
typedef struct { real_T Iterations ; real_T PoseErrorNorm ; uint16_T ExitFlag
; uint8_T Status ; uint8_T sl_padding0 [ 5 ] ; } ikblock_info_bus ;
#endif
#ifndef DEFINED_TYPEDEF_FOR_struct_MH1icwhz7mkMseeLmnjXIE_
#define DEFINED_TYPEDEF_FOR_struct_MH1icwhz7mkMseeLmnjXIE_
typedef struct { boolean_T EnforceJointLimits ; boolean_T AllowRandomRestart
; uint8_T sl_padding0 [ 6 ] ; real_T MaxIterations ; real_T MaxTime ; real_T
GradientTolerance ; real_T SolutionTolerance ; real_T StepTolerance ; }
struct_MH1icwhz7mkMseeLmnjXIE ;
#endif
#ifndef struct_tag_2PsGMppoK4e2vdwpogf6iH
#define struct_tag_2PsGMppoK4e2vdwpogf6iH
struct tag_2PsGMppoK4e2vdwpogf6iH { int32_T isInitialized ; } ;
#endif
#ifndef typedef_brksl32yqf
#define typedef_brksl32yqf
typedef struct tag_2PsGMppoK4e2vdwpogf6iH brksl32yqf ;
#endif
#ifndef struct_tag_9D0ejTgiaZDB2bwsGwHqBF
#define struct_tag_9D0ejTgiaZDB2bwsGwHqBF
struct tag_9D0ejTgiaZDB2bwsGwHqBF { void * CollisionPrimitive ; } ;
#endif
#ifndef typedef_om2wdj4oun
#define typedef_om2wdj4oun
typedef struct tag_9D0ejTgiaZDB2bwsGwHqBF om2wdj4oun ;
#endif
#ifndef struct_tag_sdAmwXbnJnEmimT0NaJRtAD
#define struct_tag_sdAmwXbnJnEmimT0NaJRtAD
struct tag_sdAmwXbnJnEmimT0NaJRtAD { real_T tv_sec ; real_T tv_nsec ; } ;
#endif
#ifndef typedef_mlxfszazeh
#define typedef_mlxfszazeh
typedef struct tag_sdAmwXbnJnEmimT0NaJRtAD mlxfszazeh ;
#endif
#include "coder_posix_time.h"
#ifndef struct_tag_1FpmCQNe36RDLjratTWCgF
#define struct_tag_1FpmCQNe36RDLjratTWCgF
struct tag_1FpmCQNe36RDLjratTWCgF { int32_T __dummy ; } ;
#endif
#ifndef typedef_h1scvkihju
#define typedef_h1scvkihju
typedef struct tag_1FpmCQNe36RDLjratTWCgF h1scvkihju ;
#endif
#ifndef struct_tag_9VaLdcnhzQxC5h4iXVOCU
#define struct_tag_9VaLdcnhzQxC5h4iXVOCU
struct tag_9VaLdcnhzQxC5h4iXVOCU { mlxfszazeh StartTime ; } ;
#endif
#ifndef typedef_pamfivyhua
#define typedef_pamfivyhua
typedef struct tag_9VaLdcnhzQxC5h4iXVOCU pamfivyhua ;
#endif
#ifndef struct_tag_I7lxy6BEal0s7MBxygd9JE
#define struct_tag_I7lxy6BEal0s7MBxygd9JE
struct tag_I7lxy6BEal0s7MBxygd9JE { real_T f1 [ 16 ] ; } ;
#endif
#ifndef typedef_bkyb12klys
#define typedef_bkyb12klys
typedef struct tag_I7lxy6BEal0s7MBxygd9JE bkyb12klys ;
#endif
#ifndef struct_tag_xcgxZ5He9ABYYFkMb0gw9F
#define struct_tag_xcgxZ5He9ABYYFkMb0gw9F
struct tag_xcgxZ5He9ABYYFkMb0gw9F { real_T f1 [ 36 ] ; } ;
#endif
#ifndef typedef_bkyb12klys3
#define typedef_bkyb12klys3
typedef struct tag_xcgxZ5He9ABYYFkMb0gw9F bkyb12klys3 ;
#endif
#ifndef struct_emxArray_char_T
#define struct_emxArray_char_T
struct emxArray_char_T { char_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_e1n154mvbh
#define typedef_e1n154mvbh
typedef struct emxArray_char_T e1n154mvbh ;
#endif
#ifndef struct_emxArray_tag_9D0ejTgiaZDB2bwsGw
#define struct_emxArray_tag_9D0ejTgiaZDB2bwsGw
struct emxArray_tag_9D0ejTgiaZDB2bwsGw { om2wdj4oun * data ; int32_T * size ;
int32_T allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_anhhcamq4s
#define typedef_anhhcamq4s
typedef struct emxArray_tag_9D0ejTgiaZDB2bwsGw anhhcamq4s ;
#endif
#ifndef struct_tag_fg3hltRT1BVNp1FuRifnyD
#define struct_tag_fg3hltRT1BVNp1FuRifnyD
struct tag_fg3hltRT1BVNp1FuRifnyD { e1n154mvbh * Type ; real_T PositionNumber
; real_T JointToParentTransform [ 16 ] ; real_T ChildToJointTransform [ 16 ]
; real_T JointAxisInternal [ 3 ] ; } ;
#endif
#ifndef typedef_ot4uovzkt0
#define typedef_ot4uovzkt0
typedef struct tag_fg3hltRT1BVNp1FuRifnyD ot4uovzkt0 ;
#endif
#ifndef struct_tag_HWD60tsp5C7nQvoaHaK87D
#define struct_tag_HWD60tsp5C7nQvoaHaK87D
struct tag_HWD60tsp5C7nQvoaHaK87D { boolean_T matlabCodegenIsDeleted ;
anhhcamq4s * CollisionGeometries ; real_T MaxElements ; real_T Size ; } ;
#endif
#ifndef typedef_ogx4llc4ar
#define typedef_ogx4llc4ar
typedef struct tag_HWD60tsp5C7nQvoaHaK87D ogx4llc4ar ;
#endif
#ifndef struct_tag_bLD8l9lmku4VeoWPZlvqoC
#define struct_tag_bLD8l9lmku4VeoWPZlvqoC
struct tag_bLD8l9lmku4VeoWPZlvqoC { boolean_T matlabCodegenIsDeleted ;
e1n154mvbh * NameInternal ; ot4uovzkt0 JointInternal ; real_T ParentIndex ;
ogx4llc4ar CollisionsInternal ; } ;
#endif
#ifndef typedef_alyuhn31fb
#define typedef_alyuhn31fb
typedef struct tag_bLD8l9lmku4VeoWPZlvqoC alyuhn31fb ;
#endif
#ifndef struct_tag_VL3tCO4HHTBPOp8I77pXZD
#define struct_tag_VL3tCO4HHTBPOp8I77pXZD
struct tag_VL3tCO4HHTBPOp8I77pXZD { boolean_T matlabCodegenIsDeleted ; real_T
NumBodies ; alyuhn31fb Base ; alyuhn31fb * Bodies [ 9 ] ; real_T
PositionNumber ; alyuhn31fb _pobj0 [ 18 ] ; } ;
#endif
#ifndef typedef_mjv2tzlyyi
#define typedef_mjv2tzlyyi
typedef struct tag_VL3tCO4HHTBPOp8I77pXZD mjv2tzlyyi ;
#endif
#ifndef struct_tag_uwk8UfaDk6ywR9nqcntYsG
#define struct_tag_uwk8UfaDk6ywR9nqcntYsG
struct tag_uwk8UfaDk6ywR9nqcntYsG { boolean_T matlabCodegenIsDeleted ;
int32_T isInitialized ; mjv2tzlyyi TreeInternal ; } ;
#endif
#ifndef typedef_evzhsot2uw
#define typedef_evzhsot2uw
typedef struct tag_uwk8UfaDk6ywR9nqcntYsG evzhsot2uw ;
#endif
#ifndef struct_emxArray_real_T
#define struct_emxArray_real_T
struct emxArray_real_T { real_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_klgljlxbmf
#define typedef_klgljlxbmf
typedef struct emxArray_real_T klgljlxbmf ;
#endif
#ifndef struct_tag_EhjQFBatIylmRskzCQ6c4C
#define struct_tag_EhjQFBatIylmRskzCQ6c4C
struct tag_EhjQFBatIylmRskzCQ6c4C { e1n154mvbh * Type ; real_T VelocityNumber
; real_T PositionNumber ; klgljlxbmf * MotionSubspace ; boolean_T InTree ;
real_T JointToParentTransform [ 16 ] ; real_T ChildToJointTransform [ 16 ] ;
e1n154mvbh * NameInternal ; klgljlxbmf * PositionLimitsInternal ; klgljlxbmf
* HomePositionInternal ; real_T JointAxisInternal [ 3 ] ; } ;
#endif
#ifndef typedef_ot4uovzkt0w
#define typedef_ot4uovzkt0w
typedef struct tag_EhjQFBatIylmRskzCQ6c4C ot4uovzkt0w ;
#endif
#ifndef struct_tag_Cqnxnc08da43HsiMCKoHlE
#define struct_tag_Cqnxnc08da43HsiMCKoHlE
struct tag_Cqnxnc08da43HsiMCKoHlE { e1n154mvbh * Type ; klgljlxbmf *
MotionSubspace ; real_T JointToParentTransform [ 16 ] ; real_T
ChildToJointTransform [ 16 ] ; real_T JointAxisInternal [ 3 ] ; } ;
#endif
#ifndef typedef_ot4uovzkt0wp
#define typedef_ot4uovzkt0wp
typedef struct tag_Cqnxnc08da43HsiMCKoHlE ot4uovzkt0wp ;
#endif
#ifndef struct_tag_RZB2o9RWoUTUwVsHmOuEo
#define struct_tag_RZB2o9RWoUTUwVsHmOuEo
struct tag_RZB2o9RWoUTUwVsHmOuEo { boolean_T matlabCodegenIsDeleted ; real_T
Index ; e1n154mvbh * NameInternal ; ot4uovzkt0wp JointInternal ; real_T
ParentIndex ; real_T SpatialInertia [ 36 ] ; ogx4llc4ar CollisionsInternal ;
} ;
#endif
#ifndef typedef_alyuhn31fbf
#define typedef_alyuhn31fbf
typedef struct tag_RZB2o9RWoUTUwVsHmOuEo alyuhn31fbf ;
#endif
#ifndef struct_tag_LY37XtxUn1R5EHha8G9oJF
#define struct_tag_LY37XtxUn1R5EHha8G9oJF
struct tag_LY37XtxUn1R5EHha8G9oJF { boolean_T matlabCodegenIsDeleted ; real_T
NumBodies ; alyuhn31fbf Base ; real_T Gravity [ 3 ] ; alyuhn31fbf * Bodies [
9 ] ; real_T PositionDoFMap [ 18 ] ; real_T VelocityDoFMap [ 18 ] ;
alyuhn31fbf _pobj0 [ 18 ] ; } ;
#endif
#ifndef typedef_mjv2tzlyyig
#define typedef_mjv2tzlyyig
typedef struct tag_LY37XtxUn1R5EHha8G9oJF mjv2tzlyyig ;
#endif
#ifndef struct_tag_eTX9klWeRtZzdQkD4juuM
#define struct_tag_eTX9klWeRtZzdQkD4juuM
struct tag_eTX9klWeRtZzdQkD4juuM { boolean_T matlabCodegenIsDeleted ; int32_T
isInitialized ; mjv2tzlyyig TreeInternal ; } ;
#endif
#ifndef typedef_jd4q4eqa1g
#define typedef_jd4q4eqa1g
typedef struct tag_eTX9klWeRtZzdQkD4juuM jd4q4eqa1g ;
#endif
#ifndef struct_emxArray_int8_T
#define struct_emxArray_int8_T
struct emxArray_int8_T { int8_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_lbiyaleu3n
#define typedef_lbiyaleu3n
typedef struct emxArray_int8_T lbiyaleu3n ;
#endif
#ifndef struct_emxArray_tag_I7lxy6BEal0s7MBxyg
#define struct_emxArray_tag_I7lxy6BEal0s7MBxyg
struct emxArray_tag_I7lxy6BEal0s7MBxyg { bkyb12klys * data ; int32_T * size ;
int32_T allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_hzpfvcreu1
#define typedef_hzpfvcreu1
typedef struct emxArray_tag_I7lxy6BEal0s7MBxyg hzpfvcreu1 ;
#endif
#ifndef struct_emxArray_tag_xcgxZ5He9ABYYFkMb0
#define struct_emxArray_tag_xcgxZ5He9ABYYFkMb0
struct emxArray_tag_xcgxZ5He9ABYYFkMb0 { bkyb12klys3 * data ; int32_T * size
; int32_T allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_hzpfvcreu1o
#define typedef_hzpfvcreu1o
typedef struct emxArray_tag_xcgxZ5He9ABYYFkMb0 hzpfvcreu1o ;
#endif
#ifndef struct_emxArray_boolean_T
#define struct_emxArray_boolean_T
struct emxArray_boolean_T { boolean_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_m5kgub1d5k
#define typedef_m5kgub1d5k
typedef struct emxArray_boolean_T m5kgub1d5k ;
#endif
#ifndef struct_emxArray_int32_T
#define struct_emxArray_int32_T
struct emxArray_int32_T { int32_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_ncvluzgkod
#define typedef_ncvluzgkod
typedef struct emxArray_int32_T ncvluzgkod ;
#endif
#ifndef struct_emxArray_uint32_T
#define struct_emxArray_uint32_T
struct emxArray_uint32_T { uint32_T * data ; int32_T * size ; int32_T
allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_pr5ntxwpwx
#define typedef_pr5ntxwpwx
typedef struct emxArray_uint32_T pr5ntxwpwx ;
#endif
#ifndef struct_tag_FDmcpvQOLiq3ThVhRoRDgG
#define struct_tag_FDmcpvQOLiq3ThVhRoRDgG
struct tag_FDmcpvQOLiq3ThVhRoRDgG { void * CollisionPrimitive ; real_T
LocalPose [ 16 ] ; real_T WorldPose [ 16 ] ; } ;
#endif
#ifndef typedef_om2wdj4ounp
#define typedef_om2wdj4ounp
typedef struct tag_FDmcpvQOLiq3ThVhRoRDgG om2wdj4ounp ;
#endif
#ifndef struct_emxArray_tag_FDmcpvQOLiq3ThVhRo
#define struct_emxArray_tag_FDmcpvQOLiq3ThVhRo
struct emxArray_tag_FDmcpvQOLiq3ThVhRo { om2wdj4ounp * data ; int32_T * size
; int32_T allocatedSize ; int32_T numDimensions ; boolean_T canFreeData ; } ;
#endif
#ifndef typedef_anhhcamq4s3
#define typedef_anhhcamq4s3
typedef struct emxArray_tag_FDmcpvQOLiq3ThVhRo anhhcamq4s3 ;
#endif
#ifndef struct_tag_9POrn2enIyVe8JaCCgbcC
#define struct_tag_9POrn2enIyVe8JaCCgbcC
struct tag_9POrn2enIyVe8JaCCgbcC { boolean_T matlabCodegenIsDeleted ;
anhhcamq4s3 * CollisionGeometries ; real_T MaxElements ; real_T Size ; } ;
#endif
#ifndef typedef_ogx4llc4arl
#define typedef_ogx4llc4arl
typedef struct tag_9POrn2enIyVe8JaCCgbcC ogx4llc4arl ;
#endif
#ifndef struct_tag_i5Te3PaGE08te6EzjoIaZ
#define struct_tag_i5Te3PaGE08te6EzjoIaZ
struct tag_i5Te3PaGE08te6EzjoIaZ { boolean_T matlabCodegenIsDeleted ; real_T
Index ; e1n154mvbh * NameInternal ; ot4uovzkt0w * JointInternal ; real_T
ParentIndex ; real_T MassInternal ; real_T CenterOfMassInternal [ 3 ] ;
real_T InertiaInternal [ 9 ] ; real_T SpatialInertia [ 36 ] ; ogx4llc4arl *
CollisionsInternal ; } ;
#endif
#ifndef typedef_alyuhn31fbfz
#define typedef_alyuhn31fbfz
typedef struct tag_i5Te3PaGE08te6EzjoIaZ alyuhn31fbfz ;
#endif
#ifndef struct_tag_gTNQbdbBmcCQkEWVcgfQFG
#define struct_tag_gTNQbdbBmcCQkEWVcgfQFG
struct tag_gTNQbdbBmcCQkEWVcgfQFG { boolean_T matlabCodegenIsDeleted ; real_T
NumBodies ; alyuhn31fbfz Base ; real_T Gravity [ 3 ] ; alyuhn31fbfz * Bodies
[ 9 ] ; ogx4llc4arl _pobj0 [ 19 ] ; ot4uovzkt0w _pobj1 [ 19 ] ; alyuhn31fbfz
_pobj2 [ 18 ] ; } ;
#endif
#ifndef typedef_mjv2tzlyyigm
#define typedef_mjv2tzlyyigm
typedef struct tag_gTNQbdbBmcCQkEWVcgfQFG mjv2tzlyyigm ;
#endif
#ifndef struct_tag_yX322BzQbsb2JZXCmPh1NB
#define struct_tag_yX322BzQbsb2JZXCmPh1NB
struct tag_yX322BzQbsb2JZXCmPh1NB { boolean_T matlabCodegenIsDeleted ; real_T
NumBodies ; alyuhn31fbfz Base ; h1scvkihju FastVisualizationHelper ;
alyuhn31fbfz * Bodies [ 9 ] ; real_T NumNonFixedBodies ; real_T
PositionNumber ; real_T VelocityNumber ; real_T PositionDoFMap [ 18 ] ;
real_T VelocityDoFMap [ 18 ] ; alyuhn31fbfz _pobj0 [ 9 ] ; ogx4llc4arl _pobj1
[ 10 ] ; ot4uovzkt0w _pobj2 [ 10 ] ; } ;
#endif
#ifndef typedef_m0caqfktx0
#define typedef_m0caqfktx0
typedef struct tag_yX322BzQbsb2JZXCmPh1NB m0caqfktx0 ;
#endif
#ifndef struct_tag_nIRO3Nn1SnOUSzXr9LNAsC
#define struct_tag_nIRO3Nn1SnOUSzXr9LNAsC
struct tag_nIRO3Nn1SnOUSzXr9LNAsC { boolean_T matlabCodegenIsDeleted ;
m0caqfktx0 * Robot ; real_T WeightMatrix [ 36 ] ; e1n154mvbh * BodyName ;
real_T Tform [ 16 ] ; klgljlxbmf * ErrTemp ; real_T CostTemp ; klgljlxbmf *
GradTemp ; } ;
#endif
#ifndef typedef_lnin0tndd2
#define typedef_lnin0tndd2
typedef struct tag_nIRO3Nn1SnOUSzXr9LNAsC lnin0tndd2 ;
#endif
#ifndef struct_tag_FS3WoKBrpkWI4fmnPU4B7
#define struct_tag_FS3WoKBrpkWI4fmnPU4B7
struct tag_FS3WoKBrpkWI4fmnPU4B7 { boolean_T matlabCodegenIsDeleted ; char_T
Name [ 22 ] ; klgljlxbmf * ConstraintMatrix ; klgljlxbmf * ConstraintBound ;
boolean_T ConstraintsOn ; real_T SolutionTolerance ; boolean_T RandomRestart
; lnin0tndd2 * ExtraArgs ; real_T MaxNumIteration ; real_T MaxTime ; real_T
SeedInternal [ 6 ] ; real_T MaxTimeInternal ; real_T MaxNumIterationInternal
; real_T StepTolerance ; pamfivyhua TimeObj ; real_T GradientTolerance ;
real_T ArmijoRuleBeta ; real_T ArmijoRuleSigma ; pamfivyhua TimeObjInternal ;
} ;
#endif
#ifndef typedef_ecfe5we0wc
#define typedef_ecfe5we0wc
typedef struct tag_FS3WoKBrpkWI4fmnPU4B7 ecfe5we0wc ;
#endif
#ifndef struct_tag_bsMGPkTSsUwcfBReK6csVH
#define struct_tag_bsMGPkTSsUwcfBReK6csVH
struct tag_bsMGPkTSsUwcfBReK6csVH { boolean_T matlabCodegenIsDeleted ;
int32_T isInitialized ; boolean_T isSetupComplete ; ecfe5we0wc * Solver ;
klgljlxbmf * Limits ; m0caqfktx0 * RigidBodyTreeInternal ; lnin0tndd2 _pobj0
; ot4uovzkt0w _pobj1 [ 18 ] ; alyuhn31fbfz _pobj2 [ 9 ] ; ogx4llc4arl _pobj3
[ 19 ] ; m0caqfktx0 _pobj4 ; ecfe5we0wc _pobj5 ; } ;
#endif
#ifndef typedef_carpjyrt23
#define typedef_carpjyrt23
typedef struct tag_bsMGPkTSsUwcfBReK6csVH carpjyrt23 ;
#endif
#ifndef struct_tag_aF9lP1hH8s0AAquCjna2oD
#define struct_tag_aF9lP1hH8s0AAquCjna2oD
struct tag_aF9lP1hH8s0AAquCjna2oD { boolean_T matlabCodegenIsDeleted ;
int32_T isInitialized ; mjv2tzlyyigm TreeInternal ; carpjyrt23 IKInternal ; }
;
#endif
#ifndef typedef_ecbwrsiemx
#define typedef_ecbwrsiemx
typedef struct tag_aF9lP1hH8s0AAquCjna2oD ecbwrsiemx ;
#endif
#ifndef typedef_gkb0igonbu
#define typedef_gkb0igonbu
typedef int32_T gkb0igonbu ;
#endif
#ifndef robotics_core_internal_NLPSolverExitFlags_constants
#define robotics_core_internal_NLPSolverExitFlags_constants
#define robotics_core_internal_NLPSolverExitFlags_LocalMinimumFound (1)
#define robotics_core_internal_NLPSolverExitFlags_IterationLimitExceeded (2)
#define robotics_core_internal_NLPSolverExitFlags_TimeLimitExceeded (3)
#define robotics_core_internal_NLPSolverExitFlags_StepSizeBelowMinimum (4)
#define robotics_core_internal_NLPSolverExitFlags_ChangeInErrorBelowMinimum (5)
#define robotics_core_internal_NLPSolverExitFlags_SearchDirectionInvalid (6)
#define robotics_core_internal_NLPSolverExitFlags_HessianNotPositiveSemidefinite (7)
#define robotics_core_internal_NLPSolverExitFlags_TrustRegionRadiusBelowMinimum (8)
#endif
#ifndef SS_UINT64
#define SS_UINT64 23
#endif
#ifndef SS_INT64
#define SS_INT64 24
#endif
typedef struct P_ P ;
#endif
